package com.sc.nft.admin.request;

import com.sc.nft.enums.RankingBoardTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;


@Data
public class AddRankingBoardRequest {

    @ApiModelProperty(value = "排行榜名称  POSITION_RANKING:持仓排行榜  IP_MALL_TRADING:IP商城交易额排行榜", required = true)
    @NotNull(message = "排行榜名称不能为空")
    private RankingBoardTypeEnum type;


    @ApiModelProperty(value = "排行榜名称", required = true)
    @NotBlank(message = "排行榜名称不能为空")
    private String name;

    @ApiModelProperty(value = "开始时间", required = true)
    @NotNull(message = "开始时间不能为空")
    private String beginTime;

    @ApiModelProperty(value = "结束时间", required = true)
    @NotNull(message = "结束时间不能为空")
    private String endTime;

    @ApiModelProperty(value = "榜单人数", required = true)
    @NotNull(message = "榜单人数不能为空")
    @Range(min = 1, max = 200, message = "榜单人数最小值为1，最大值为200")
    private Integer listNumber;

    @ApiModelProperty(value = "最小数量(持仓数量/交易额)", required = true)
    @NotNull(message = "最小数量(持仓数量/交易额)不能为空")
    @Range(min = 1, max = 999999999, message = "持仓数量/交易额最小值为1，最大值为999999999")
    private Integer minimumQuantity;


    @ApiModelProperty(value = "规则说明(url)", required = true)
    @NotBlank(message = "规则说明(url)不能为空")
    private String ruleSpecification;


    @ApiModelProperty(value = "关联藏品id")
    private Long linkCollectionId;
}
